The present invention relates to computers, distributed processing systems, and specifically to CORBA (Common Object Request Broker Architecture) for use in a high-performance distributed object system using field programmable gate arrays (FPGA), digital signal processors (DSP), and field programmable object arrays (FPOA).
CORBA is a standard architecture defined by the Object Management Group (OMG) for distributed object systems. The CORBA architecture is an open vendor-independent architecture and infrastructure that allows a heterogeneous collection of distributed objects to communicate and interoperate. The distributed objects are individual units of running software that combine functionality and data. CORBA may be used in web servers that must handle large number of clients, at high hit rates, and with high reliability. CORBA may also be used in real-time systems and embedded systems.
High-performance distributed systems in use today use FPGA, DSP, FPOA processing elements (PE) as part of their processing network. CORBA and other middleware solutions do not work well on these PEs due to the requirement for each processing element to contain its own ORB (object request broker), software that hides transfer of control of one object to another. An external general purpose processor is required to provide the ORB functionality for distributed connectivity to and from the FPGA, DSP, or FPOA. The result is reduced system interconnectivity and damage to the architectural component model.
What is needed is a way to provide the functionality of the ORB in processing elements such a FPGA, DSP, or FPOA of a distributed CORBA system.